from SyntaxDesc import *
import Register
def Syntax():
	return SyntaxDesc(
		Words(gStyleStructKeyword,
			"abstract",
			"boolean",
			"break",
			"byte",
			"case",
			"catch",
			"char",
			"class",
			"const",
			"continue",
			"default",
			"do",
			"double",
			"else",
			"extends",
			"final",
			"finally",
			"float",
			"for",
			"goto",
			"if",
			"implements",
			"import",
			"instanceof",
			"int",
			"interface",
			"long",
			"native",
			"new",
			"null",
			"package",
			"private",
			"protected",
			"public",
			"return",
			"short",
			"static",
			"super",
			"switch",
			"synchronized",
			"this",
			"throw",
			"throws",
			"transient",
			"try",
			"void",
			"volatile",
			"while"
		),
		Regex(gStyleString,
			'\(\'\\\\?.\'\|"\([^\\"\n]\|\\\\.\|\\\\\n\)*"\)'
		),
		IfCommentHighlight(Regex(gStyleComment,'//.*')),
		IfCommentHighlight(MatchPair(gStyleComment,'/*','*/')),
	)

Register.RegisterSyntax(Syntax,"Java")

